In many electronic devices, logic functions are often performed by an integrated circuit specially designed and made for the particular device. Generally there are two types of custom integrated circuits, an Application Specific Integrated Circuit (ASIC) or a Field Programmable Gate Array (FPGA). ASICs provide a generally fast processor with clock speeds that may exceed 1 GHz. Unfortunately, ASICs and the engineering effort required to design and produce the ASIC can be cost prohibitive.
Designers often use FPGAs to reduce the cost of electronic devices. However, FPGAs operate up to 500 MHz, which is much slower than ASICs and do not work well in application that require the higher clock speeds of ASICs.